1. Technical Field
The present invention relates to data management in data centers. More specifically, it relates to maintaining the data integrity of multiple copies of data in the data servers of multiple data centers.
2. Background Information
A data center is a facility used to house computer systems and their associated components, such as telecommunications and storage systems. Almost all major enterprises have more than one data center, in which a huge amount of data is stored in the storage systems. Data centers provide the data, applications, web-hosting, and e-business functions that are essential for the continued operations of these enterprises. The data centers generally have redundant or backup power supplies, redundant data communications connections, environmental controls (e.g., air conditioning, fire suppression), and special security devices. They are dispersed in different geographical locations both for better disaster recovery and for the efficiency of geographical operations.
Most enterprises have multiple data centers. Some enterprises use passive-active data centers that have a copy of data in an active data center (i.e. the primary data center) while the other data centers containing the data (i.e. the backup data centers) are passive. This implementation of data centers usually wastes resources, because a disaster rarely happens to an active data center yet leaves its backup data centers intact. Other enterprises utilize active-active data centers in which both the primary and backup data centers are active. The active-active data centers are more complicated, but they are very efficient to service clients and improve server utilizations for normal operations. However, active-active data centers require reliable and consistent connections among data centers to keep data integrity and to control transaction flows. Otherwise, data in different data centers may not have necessary integrity, and the whole system will be malfunctioning. Moreover, it is usually very hard to maintain reliable and consistent connections across geographical locations where different data centers are located, so active-active data centers are currently used only for data that does not need strict transactions, and within an expensive dedicate Metrod network.
Many enterprises need active-active data centers for better scalability, higher reliability and more efficient use of resources. Good active-active data centers must be able to handle massive active replication copies of data, and to maintain data integrity and active role control when the network, a computer, or a component of a data center is down.